package com.tbit.uqbike.object.pojo;

import com.tbit.uqbike.webmanager.map.TXHttpClient;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import javax.persistence.Access;
import java.util.Date;

/**
 * @author ：hzw
 * @date ：Created in 2021/8/17 13:48
 * @description：工单业务实体类
 * @modified By：
 * @version: $
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class WorkOrderVO extends WorkOrder {
    /**
     * 车辆编号
     */
    private String userCode;
    /**
     * 换电时间
     */
    private Date changeTime;
    /**
     * 旧电量
     */
    private Integer oldSoc;
    /**
     * 新电量
     */
    private Integer newSoc;
    /**
     * 领取用户电话号码
     */
    private String getUserPhone;
    /**
     * 换电次数
     */
    private Integer total;
    /**
     * 分区名字
     */
    private String regionName;
    /**
     * 运维人员id
     */
    private Integer accountUserId;
    /**
     * 运维人员名字
     */
    private String accountUserName;
    /**
     * 运维人员电话号码
     */
    private String phone;
    /**
     * 维修添加时间
     */
    private Date repairAddTime;
    /**
     * 维修接单时间
     */
    private Date repairTime;
    /**
     * 维修类型标识
     */
    private String repairType;
    /**
     * 维修类型
     */
    private String repairTypes;
    /**
     * 维修备注
     */
    private String repairRemark;
    /**
     * 维修状态标识
     */
    private Integer repairState;
    /**
     * 维修状态
     */
    private String repairStates;
    /**
     * 维修图片
     */
    private String repairUrl;
    /**
     * 挪车开始时间
     */
    private Date moveStartTime;
    /**
     * 挪车结束时间
     */
    private Date moveEndTime;
    /**
     * 挪车开始位置经度
     */
    private Double moveStartLat;
    /**
     * 挪车开始位置纬度
     */
    private Double moveStartLon;
    /**
     * 挪车结束位置经度
     */
    private Double moveEndLat;
    /**
     * 挪车结束位置纬度
     */
    private Double moveEndLon;
    private Double lon;
    private Double lat;
    private Double lonC;
    private Double latC;
    /**
     * 挪车状态
     */
    private Integer moveState;
    /**
     * 挪车备注
     */
    private String moveRemark;
    /**
     * 挪车站点名
     */
    private String moveParkPoint;
    /**
     * 工单状态集合
     */
    private String isValidList;
    /**
     * 有效
     */
    private int valid;
    /**
     * 无效
     */
    private int unValid;
    /**
     * 审核中
     */
    private int underReview;
    /**
     * 审核人名称
     */
    private String auditName;
    private String oldParkPoint;
    private String newParkPoint;
    private String title;
    private String content;
    private String workName;

    /**
     * 0:超区 1：站外
     */
    private Integer locationType;

    private String locationTypeName;

    public void transAddress() {
        if (moveStartLat != null && moveStartLon != null) {
            oldParkPoint = TXHttpClient.getAddress(moveStartLon, moveStartLat);
        }
        if (moveEndLon != null && moveEndLat != null) {
            newParkPoint = TXHttpClient.getAddress(moveEndLon, moveEndLat);
        }
    }

}
